// 配置 ajax 的基础路径
axios.defaults.baseURL = "http://api-breakingnews-web.itheima.net";

// 请求拦截器
axios.interceptors.request.use(
  function (config) {
    // // 给 /my 开头的请求添加 身份认证信息！
    // console.log(config);
    // 判断: 只要包含 /my/ 就添加token
    // if (config.url.indexOf('/my/') >= 0) {
    // if (config.url.indexOf('/my/') > -1) {
    if (config.url.includes("/my/")) {
      config.headers.Authorization = localStorage.getItem("token");
    }
    // 必须要返回 config
    return config;
  },
  function (error) {
    // 这个语法我们后面讲,现在不考虑请求出错误的情况！
    return Promise.reject(error);
  }
);

// 响应拦截器
axios.interceptors.response.use(
  function (response) {
    // 处理响应内容！！！
    //   如果身份认证失败，那么就跳转到登录页面！
    let obj = response.data;
    if (obj.message === "身份认证失败！") {
      // 页面跳转
      location.href = "/login.html";
      // 删除无效token
      localStorage.removeItem("token");
    }

    // 下面的代码，可以让 axios 中的返回数据和 jQuery中的ajax返回的数据一样！
    // response = response.data;

    // 返回响应对象
    return response;
  },
  function (error) {
    // 这个语法我们后面讲,现在不考虑请求出错误的情况！
    return Promise.reject(error);
  }
);

//格式化日期方式
function dateFormat(str) {
  let dt = new Date(str);
  let yy = dt.getFullYear();
  let mm = padZero(dt.getMonth() + 1);
  let dd = padZero(dt.getDate());
  let h = padZero(dt.getHours());
  let m = padZero(dt.getMinutes());
  let s = padZero(dt.getSeconds());

  return `${yy}-${mm}-${dd}-${h}-${m}-${s} `;
}
function padZero(n) {
  return n < 10 ? "0" + n : n;
}
